This invention relates to programmable sequence control method and apparatus, and more particularly to a type thereof utilizing a column cyclic operation.
Control apparatus including complicated relay systems known as relay ladder circuits have been well known. In these apparatus when one part of the relay ladder circuit is required to be altered, various parts associated therewith must be also altered, rendering the alteration to be extremely troublesome.
In order to eliminate the above described difficulties, programmable sequence control apparatus have been heretofore developed. In this kind of control apparatus, the relay ladder circuit in the form of hardware is not utilized any more, but a sequence control program is stored therein in the form of software.
The control methods used in recent programmable sequence controllers can be classified into two groups, one being a method for controlling the sequence of operation in accordance with the Polish notation of Boolean formulae, and the other being a method for controlling each relay sequence by a jumping instruction as disclosed in the Japanese Laid-Open Patent Specification No. 152174/1975.
The methods will now be described in detail with respect to a relay circuit shown in FIG. 1.
According to the first method utilizing Boolean formulae, a program for obtaining the logic sum Y1 of two values, one being a logic product of the data regarding contacts i1 and i2, and the other being a logic product of the data regarding contacts i3 and i4, includes the following instructions.
(1) Load an accumulator with i1, PA1 (2) Obtain logic product of i2 and the contents of the accumulator, PA1 (3) Shift the logical product obtained by the accumulator into a memory device, PA1 (4) Load the accumulator with i3, PA1 (5) Obtain a logic product between the contents of the accumulator and i4, PA1 (6) Provide a logic sum of the logic product stored in the memory device and the contents of the accumulator, and PA1 (7) Deliver the logic sum to the output Y1. PA1 (1) Load an accumulator with il, PA1 (2) Obtain a logic product of i2 and the content of the accumulator, PA1 (3) Jump to the following step (9) if the logic product satisfies a condition (ON), PA1 (4) Load the accumulator with i3, PA1 (5) Calculate a logic product of i4 and the contents of the accumulator, PA1 (6) Jump to the step (9) if the logic product satisfies a condition (ON), PA1 (7) Deliver the logic sum to the output Y1. PA1 (1) Load an accumulator with i1, PA1 (2) Obtain a logic product of i2 and the content of the accumulator, PA1 (3) Jump to the following step (9) if the logic product satisfies a condition (ON), PA1 (4) Load the accumulator with i3, PA1 (5) Calculate a logic product of i4 and the contents of the accumulator, PA1 (6) Jump to the step (9) if the logic product satisfies a condition (ON), PA1 (7) Stop the output (when the condition is not satisfied), PA1 (8) Jump to step (10) without any condition, PA1 (9) Produce the output, and PA1 (10) Shift operation to another relay ladder circuit.
On the other hand, a program used in the second method utilizing jumping instructions includes the following instructions.
On the other hand, a program used in the second method utilizing jumping instructions includes the following instructions.
As is apparent from the above description, the programs used in the two methods must be prepared by carefully observing the relay ladder circuit and considering the sequence in executing the instructions. This means that the preparation, compiling and correction of the programs are complicated because of the complexity of the relay ladder circuit.